Document cookie 操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function getCookieData(ckname){
var cookies = document.cookie;
var name = ckname+'=';
var name_s = cookies.indexOf(name);
var s,e;
if(name_s>-1){
s = name_s + name.length;
e = cookies.indexOf(';',s);
if(e == -1){
e = cookies.length;
}
return unescape(cookies.substring(s,e));
}else{
return '';
}
}

定义一个getCookieData的方法,传入参数ckname为要查找的cookie的name。

在浏览器中,cookie是以name=value的方式存在的,document.cookie获取到的值为 name1=value1;name2=value2;name3=value3; etc.的字符串,

indexOf获取要查找的cookie name的索引值 根据索引值substring截取字符串,如果cookie name没有找到对应的索引则返回’’空内容。

可以参考MDN文章 一个支持unicode的cookie读取/写入器